package com.etone.smartAudit.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author jiayen
 * @since 2021-12-07 11:58:34
 */
@ApiModel(value = "p_uum_userinfo对象", description = "p_uum_userinfo")
@Data
@TableName("p_uum_userinfo")
public class PUumUserinfo implements Serializable {

    @ApiModelProperty(value = "用户身份唯一标识，2 位公司代号+8 位员工编号, 代维人员为一个 10  位的数字编码，UIM则以99开头的10位数字编号")
    @TableField("employee")
    private String employee;

    @ApiModelProperty(value = "用户帐号/ 代维人员账号")
    @TableField("userID")
    private String userID;

    @ApiModelProperty(value = "用户全名")
    @TableField("fullName")
    private String fullName;

    @ApiModelProperty(value = "编制部门 PortalID 数据")
    @TableField("OUID")
    private String oUID;

    @ApiModelProperty(value = "编制部门 GUID 对外提供数据（针对非PORTAL 应用）/ 代维人员为所属团队")
    @TableField("OUGUID")
    private String oUGUID;

    @ApiModelProperty(value = "工作部门 OUGUID 对外提供数据（针对非 PORTAL 应用）/ 代维人员为所属团队")
    @TableField("workOUGUID")
    private String workOUGUID;

    @ApiModelProperty(value = "所属地区(省公司)")
    @TableField("region")
    private String region;

    @ApiModelProperty(value = "地区序号 (OUGUID 数据)")
    @TableField("regionID")
    private String regionID;

    @ApiModelProperty(value = "所属公司")
    @TableField("company")
    private String company;

    @ApiModelProperty(value = "公司序号 (OUGUID 数据)")
    @TableField("companyID")
    private String companyID;

    @ApiModelProperty(value = "所属分公司")
    @TableField("branch")
    private String branch;

    @ApiModelProperty(value = "分公司序号 (OUGUID 数据)")
    @TableField("branchID")
    private String branchID;

    @ApiModelProperty(value = "所属部门")
    @TableField("department")
    private String department;

    @ApiModelProperty(value = "部门序号 (OUGUID 数据)")
    @TableField("departmentID")
    private String departmentID;

    @ApiModelProperty(value = "所属科室")
    @TableField("userGroup")
    private String userGroup;

    @ApiModelProperty(value = "科室序号 (OUGUID 数据)")
    @TableField("userGroupID")
    private String userGroupID;

    @ApiModelProperty(value = "服务厅")
    @TableField("hall")
    private String hall;

    @ApiModelProperty(value = "服务厅序号")
    @TableField("hallid")
    private String hallid;

    @ApiModelProperty(value = "销售点（班、组）")
    @TableField("salepoint")
    private String salepoint;

    @ApiModelProperty(value = "销售点序号(portal 数据)")
    @TableField("salepointid")
    private String salepointid;

    @ApiModelProperty(value = "因此字段之前留空，现为营业厅人员相关数储 据存储使用主要存储 BOSS  工号，BOSS  工号类型型等，使用@@@ 分隔：BOSS  工号@@@ 登陆类型@@@ 员工类型@@@ 账号状态@@@ BOSS  工号操作员类型 @@@ 启用时间( 时间格:YYYY-MM-DD)@@@ 所属地市@@@ 所属部门( 其中账号状态取值为 1 和 和 2 ，1  为有效，2为失效)停用时间请使用(userQuitDate)")
    @TableField("teams")
    private String teams;

    @ApiModelProperty(value = "人员库类型 一般来讲，应用系统只需要有效的用户数据，即 jobtype  为 000001  （在岗人员库）000004 （社会化员工库）、000009 （全省交流人员库）、000010 （全省借调人员库）、000088） （代维人员库） 、000099 （临时借调人员库）000003  （ 异地 任 职 人 员 库 ） 000002 ( 离 退 人 员 ) 000006( 离职人员 库 ）000007 （内退人员库）000066( 客服人员 库 ）000077 （营业厅人员库）000055( 系统账号 ）000044  ( 公用账号 ）")
    @TableField("jobType")
    private String jobType;

    @ApiModelProperty(value = "人员库类型-PORTAL(参考业务字典列表)")
    @TableField("userType")
    private String userType;

    @ApiModelProperty(value = "工作电话")
    @TableField("workPhone")
    private String workPhone;

    @ApiModelProperty(value = "移动电话")
    @TableField("telePhone")
    private String telePhone;

    @ApiModelProperty(value = "办公邮件")
    @TableField("email")
    private String email;

    @ApiModelProperty(value = "联系地址")
    @TableField("address")
    private String address;

    @ApiModelProperty(value = "生日")
    @TableField("userBirthday")
    private Date userBirthday;

    @ApiModelProperty(value = "性别(参考业务字典列表)")
    @TableField("sex")
    private String sex;

    @ApiModelProperty(value = "职位")
    @TableField("title")
    private String title;

    @ApiModelProperty(value = "集团短号")
    @TableField("shortMobile")
    private String shortMobile;

    @ApiModelProperty(value = "用户职位职级编码(参考业务字典列表)")
    @TableField("userPosiLevel")
    private String userPosiLevel;

    @ApiModelProperty(value = "套入职级")
    @TableField("currentLevel")
    private String currentLevel;

    @ApiModelProperty(value = "用户职位 (参考业务字典列表)（流程职务职级）")
    @TableField("employeeClass")
    private String employeeClass;

    @ApiModelProperty(value = "　员工职称(参考附录)")
    @TableField("userGrade")
    private String userGrade;

    @ApiModelProperty(value = "cmccaccount")
    @TableField("CMCCAccount")
    private String cMCCAccount;

    @ApiModelProperty(value = "排序 ID，在 UI 上显示时的做排序")
    @TableField("orderID")
    private String orderID;

    @ApiModelProperty(value = "加入公司日期")
    @TableField("userJoinInDate")
    private Date userJoinInDate;

    @ApiModelProperty(value = "民族(参考业务字典列表)")
    @TableField("userNation")
    private String userNation;

    @ApiModelProperty(value = "政治面貌(参考业务字典列表)")
    @TableField("userReligion")
    private String userReligion;

    @ApiModelProperty(value = "离开公司日期 （控制用户账号使用的辅助字段）")
    @TableField("userQuitDate")
    private Date userQuitDate;

    @ApiModelProperty(value = "用户 DN")
    @TableField("userDN")
    private String userDN;

    @ApiModelProperty(value = "职务描述")
    @TableField("dutyDesc")
    private String dutyDesc;

    @ApiModelProperty(value = "用户资料在 LDAP 中变动的时间")
    @TableField("changeTime")
    private String changeTime;

    @ApiModelProperty(value = "记录创建日期")
    @TableField("createTime")
    private Date createTime;

    @ApiModelProperty(value = "最后修改日期")
    @TableField("lastModifyTime")
    private Date lastModifyTime;

    @ApiModelProperty(value = "3G 电话")
    @TableField("PHONE3G")
    private String pHONE3G;

    @ApiModelProperty(value = "人员开始生效时间")
    @TableField("empStartTime")
    private String empStartTime;

    @ApiModelProperty(value = "职务称谓[该字段为预留字段，目前为空值]")
    @TableField("POST_TITLE")
    private String postTitle;

    @ApiModelProperty(value = "员工层级")
    @TableField("HEADSHIP_CODE")
    private String headshipCode;

    @ApiModelProperty(value = "工作组织的集团组织编码")
    @TableField("cmccOrgCode")
    private String cmccOrgCode;

    @ApiModelProperty(value = "编制组织的集团组织编码")
    @TableField("cmccorgcodetwo")
    private String cmccorgcodetwo;

    @ApiModelProperty(value = "账号状态 1:启用 0:停用 2限权")
    @TableField("status")
    private String status;

    @ApiModelProperty(value = "异动变化id")
    @TableField("logID")
    private String logID;
}
